package cn.ezios.huo.system.dao.service;

import cn.ezios.huo.system.dao.domain.SysRoleMenu;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

/**
* @author 王坚
* @description 针对表【sys_role_menu(系统角色菜单)】的数据库操作Service
* @createDate 2024-07-17 09:49:16
*/
public interface SysRoleMenuService extends IService<SysRoleMenu> {

    /**
     * 创建角色菜单关联关系
     * @param roleId
     * @param menuIds
     * @return
     */
    boolean createRoleMenu(String roleId, List<String> menuIds);

    /**
     * 删除角色菜单关联关系
     * @param roleId
     * @return
     */
    boolean deleteRoleMenu(String roleId);

    /**
     * 根据角色id查询所有菜单
     * @param roleId
     * @return
     */
    List<String> getRoleMenuIds(String roleId);

    /**
     * 根据角色id查询所有叶子菜单，为前端树形菜单做准备
     * @param roleId
     * @return
     */
    List<String> getRoleMenuLeafIds(String roleId);

    /**
     * 根据输入的几个角色id查询所有对应的菜单并集
     * @param roleIds
     * @return
     */
    List<String> getMenuIdsByRoleIds(List<String> roleIds);

}
